/**
 * jims
 */
package com.jims.master.modules.sync.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jims.master.common.persistence.DataEntity;
import org.hibernate.validator.constraints.Length;

import java.util.Date;

/**
 * 检验结果Entity
 * @author ct
 * @version 2017-12-06
 */
public class LabResult extends DataEntity<LabResult> {
	
	private static final long serialVersionUID = 1L;
	private String testNo;		// 申请单号
	private String itemNo;		// 序号
	private String printOrder;		// 打印序号
	private String reportItemName;		// 项目代码
	private String reportItemCode;		// 项目名称
	private String result;		// 结果
	private String units;		// 单位
	private String abnormalIndicator;		// 异常
	private String instrumentId;		// 仪器
	private Date resultDateTime;		// 报告日期
	private String printContext;		// 参考值
	private String resultRange;		// result_range
	private String itemCode;		// item_code
	private String sampleid;		// 标本
	
	public LabResult() {
		super();
	}

	public LabResult(String id){
		super(id);
	}

	@Length(min=1, max=40, message="申请单号长度必须介于 1 和 40 之间")
	public String getTestNo() {
		return testNo;
	}

	public void setTestNo(String testNo) {
		this.testNo = testNo;
	}
	
	@Length(min=1, max=64, message="序号长度必须介于 1 和 64 之间")
	public String getItemNo() {
		return itemNo;
	}

	public void setItemNo(String itemNo) {
		this.itemNo = itemNo;
	}
	
	@Length(min=1, max=11, message="打印序号长度必须介于 1 和 11 之间")
	public String getPrintOrder() {
		return printOrder;
	}

	public void setPrintOrder(String printOrder) {
		this.printOrder = printOrder;
	}
	
	@Length(min=0, max=40, message="项目代码长度必须介于 0 和 40 之间")
	public String getReportItemName() {
		return reportItemName;
	}

	public void setReportItemName(String reportItemName) {
		this.reportItemName = reportItemName;
	}
	
	@Length(min=0, max=20, message="项目名称长度必须介于 0 和 20 之间")
	public String getReportItemCode() {
		return reportItemCode;
	}

	public void setReportItemCode(String reportItemCode) {
		this.reportItemCode = reportItemCode;
	}
	
	@Length(min=0, max=20, message="结果长度必须介于 0 和 20 之间")
	public String getResult() {
		return result;
	}

	public void setResult(String result) {
		this.result = result;
	}
	
	@Length(min=0, max=8, message="单位长度必须介于 0 和 8 之间")
	public String getUnits() {
		return units;
	}

	public void setUnits(String units) {
		this.units = units;
	}
	
	@Length(min=0, max=1, message="异常长度必须介于 0 和 1 之间")
	public String getAbnormalIndicator() {
		return abnormalIndicator;
	}

	public void setAbnormalIndicator(String abnormalIndicator) {
		this.abnormalIndicator = abnormalIndicator;
	}
	
	@Length(min=0, max=8, message="仪器长度必须介于 0 和 8 之间")
	public String getInstrumentId() {
		return instrumentId;
	}

	public void setInstrumentId(String instrumentId) {
		this.instrumentId = instrumentId;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getResultDateTime() {
		return resultDateTime;
	}

	public void setResultDateTime(Date resultDateTime) {
		this.resultDateTime = resultDateTime;
	}
	
	@Length(min=0, max=80, message="参考值长度必须介于 0 和 80 之间")
	public String getPrintContext() {
		return printContext;
	}

	public void setPrintContext(String printContext) {
		this.printContext = printContext;
	}
	
	@Length(min=0, max=30, message="result_range长度必须介于 0 和 30 之间")
	public String getResultRange() {
		return resultRange;
	}

	public void setResultRange(String resultRange) {
		this.resultRange = resultRange;
	}
	
	@Length(min=0, max=64, message="item_code长度必须介于 0 和 64 之间")
	public String getItemCode() {
		return itemCode;
	}

	public void setItemCode(String itemCode) {
		this.itemCode = itemCode;
	}
	
	@Length(min=0, max=64, message="标本长度必须介于 0 和 64 之间")
	public String getSampleid() {
		return sampleid;
	}

	public void setSampleid(String sampleid) {
		this.sampleid = sampleid;
	}
	
}